The growing presence of the Internet and other computer networks such as intranets and extranets has brought about the development of applications in e-commerce, education and other areas. Organizations increasingly rely on such applications to carry out their business or other objectives, and devote considerable resources to ensuring that the applications perform as expected. To this end, various application management techniques have been developed.
One approach for managing an application involves monitoring the application, generating data regarding application performance and analyzing the data to determine application health. Some system management products analyze a large number of data streams to try to determine a normal and abnormal application state. Large numbers of data streams are often analyzed because the system management products don't have a semantic understanding of the data being analyzed. Accordingly, when an unhealthy application state occurs, many data streams will have abnormal data values because the data streams are causally related to one another. Because the system management products lack a semantic understanding of the data, they cannot assist the user in determining either the ultimate source or cause of a problem. Additionally, these application management systems may not know whether a change in data indicates an application or server is actually unhealthy or not.